[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
[ -> open parenthesis (same as () (also in 1.00)
{ -> open parenthesis (same as () (also in 1.00)
] -> close parenthesis (same as )) (also in 1.00)
} -> close parenthesis (same as )) (also in 1.00)
== -> equal (same as =) (also in 1.00)
!= -> not equal (same as <>) (also in 1.00)
>< -> not equal (same as <>) (also in 1.00)
=< -> less or equal (same as <=) (also in 1.00)
=> -> greater or equal (same as >=) (also in 1.00)
&& -> logical and (same as &) (also in 1.00)
|| -> logical or (same as |) (also in 1.00)
** -> exponentiation (same as )
- A double quote ("") may be embedded within a string constant to tell
the compiler that a single literal quote is desired (in other
words, "THIS""IS""A""TEST" would evaluate to THIS"IS"A"TEST after
the leading and trailing quotes are removed and the double quotes
were folded to single quotes)
- Labels and variable names may now include the following characters in
addition to A-Z, 0-9, and the _ (underscore) character: $ (dollar
sign), @ (commercial at), # (pound sign), . (cents), . (british
pound), . (japanese yen)
- A \ (backslash) character as the last character on a line (before any
comments) will now allow continuing a logical line from one to the
next physical line
- A : (colon) character may be used to separate multiple logical lines
on a single physical line
- PPLC 1.00 would assume a LET statement if LET was not explicitly specified
in the following cases:
1. The variable name did not match a reserved keyword
2. The variable name was followed immediately (no space) by an equal
sign (=)
Now the equal sign need not be flush against the variable. In other
words, where "DIR = value" would not work before (because "DIR " is
a reserved keyword), it will work now (because the = before the
value will implicitly indicate a LET statement to the compiler).
- The following function(s) now take and return BIGSTRs instead of STRINGs:
REPLACE STRIP STRIPATX LTRIM RTRIM TRIM
LOWER UPPER MID LEFT RIGHT
- The following function(s) now take BIGSTRs instead of STRINGs:
LEN INSTR
- The following function(s) now return BIGSTRs instead of STRINGs:
SPACE CHR
- Added international currency and time support to PPL (based on the current
users language selection)
- The FPUTPAD statement was misdocumented; it does not automatically write
a carriage return / line feed pair; if one is needed it must be written
with an FPUTLN statement
- Added a command line switch (/NOUVAR) to PPLC to disable the automatic
generation of user variables
- A /DISARR switch was added to PPLC to disable array dimension
checking. This allows a different number of subscripts to be
passed to array references without compiler errors or warnings.
Additionally it allows the REDIM statement to change the number of
subscripts used by a variable. In other words, code like this
would be legal with the /DISARR command line switch:
STRING s ' Note no subscripts
REDIM s,5,5,5 ' Now it has subscripts
LET s(4,4,4) = "Hello, World!"
PRINTLN s(4,4,4)
STRING s(1,1,1) ' Note three subscripts
REDIM s,5,5 ' Now it has two subscripts
LET s(4,4) = "Hello, World!"
PRINTLN s(4,4)
- A comment may now be started by an asterisk (*) if it is the first
non-whitespace character on a line.
- Source files can now be included from other source files. This is
accomplished with a compiler directive in a comment like this:
;$INCLUDE:FILESPEC.EXT
(Note that the first character need not be the semi-colon. An
apostrophe ['] or asterisk [*] may also be used where appropriate.)
This allows you to include subroutines from a source code 'library'.
This should help in starting reusable code fragments. When the
file is included, it is compiled as though it were in the main
source file. For example:
FOO.INC
-------
:subroutine
PRINTLN "Hello!"
RETURN
FOO.PPS
-------
PRINTLN "Running FOO.PPS"
GOSUB subroutine
END ' This line is important!
*$INCLUDE:FOO.INC
Note the use of END in FOO.PPS. It is important in this case to
ensure that you don't accidentally run subroutine twice by just
falling through to it.
- Added the file name to warning and error displays. For example,
where the following error may have once been reported:
Error in line number 123
You will now get:
Error in file FOO.PPS, line 123
This is necessary for the new file include functionality.
- Fixed a bug with the MAXNODE function where 2 would always be returned
regardless of the actual licensed copy in use
- Fixed a bug with channel processing for the FPUTPAD statement which would
cause the statement to fail
- Fixed a bug in array subscript processing that has existed since version
1.00. The problem would occur only in multi-dimensional arrays and only if
an attempt was made to access the minimum and maximum column subscripts (0
and whatever was defined in the source code); a value written to one would
overwrite the other.
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson